Indeks (baza podataka)

Indeks u bazama podataka je podatkovna struktura koja poboljšava brzinu izvođenja operacija nad tablicom. Obradit ćemo relacijske baze podataka te ćemo opisati način rada sljedećih indeksa:

  • gusti indeksi
  • rijetki indeksi
  • B+ stablasti indeksi (b+ tree indices)

Prostor na disku koji je potreban za pohranu indeksa je obično mnogo manji nego za tablicu jer indeks sadrži ključna polja. Napravimo analogiju s indeksom u knjigama. Ako želimo pronaći neki pojam u knjizi koristimo indeks knjige koji je sortiran te nakon što pronađemo traženu vrijednost ključ ne listamo stranice u knjizi sekvencijalno već preskočimo odmah do tražene stranice. U bazama podataka umjesto da sustav za upravljanje bazama podataka (SUBP) pretražuje tablicu, koja može imati više od nekoliko desetaka milijuna zapisa, sekvencijalno s namjerom da napravi određenu operaciju dio SUBP-a koji se naziva SQL optimizator koristi indeks nad izvjesnom tablicom kako bi na najučinkovitiji način napravio traženu operaciju.

Traženu vrijednost prvo pretražujemo po indeksu, a tek onda čitamo blokove podataka u kojem se nalazi tražena vrijednost.

Prva struktura indeksa koja će biti obrađena jest nad sortiranim datotekama. Sortirana datoteka jest datoteka u kojoj su zapisi poredani u niz npr. 3, 6, 10, 12, 88 itd. U takvim datotekama n-torke su sortirane po primarnome ključu (i to samo po njemu) te ćemo zbog lakšeg razmatranja pretpostaviti da se radi o cjelobrojnim vrijednostima.


© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search